Charger 26 Click
Charger 26 Click demo application is developed using the NECTO Studio, ensuring compatibility with mikroSDK's open-source libraries and tools. Designed for plug-and-play implementation and testing, the demo is fully compatible with all development, starter, and mikromedia boards featuring a mikroBUS™ socket.
Click Library
- Author : Stefan Ilic
- Date : Aug 2023.
- Type : GPIO type
Software Support
Example Description
This example demonstrates the use of Charger 26 Click board by enabling the device and then reading and displaying the charger status.
Example Libraries
- MikroSDK.Board
- MikroSDK.Log
- Click.Charger26
Example Key Functions
- charger26_cfg_setup Config Object Initialization function.
void charger26_cfg_setup(charger26_cfg_t *cfg)
Charger 26 configuration object setup function.
Charger 26 Click configuration object.
Definition charger26.h:136
- charger26_init Initialization function.
err_t charger26_init(charger26_t *ctx, charger26_cfg_t *cfg)
Charger 26 initialization function.
Charger 26 Click context object.
Definition charger26.h:122
- charger26_default_cfg Click Default Configuration function.
void charger26_default_cfg(charger26_t *ctx)
Charger 26 default configuration function.
- charger26_set_vsel Charger 26 select charger voltage function.
void charger26_set_vsel(charger26_t *ctx, uint8_t vout_sel)
Charger 26 select charger voltage function.
- charger26_set_isel Charger 26 select charger current function.
void charger26_set_isel(charger26_t *ctx, uint8_t iout_sel)
Charger 26 select charger current function.
- charger26_get_chg_state Charger 26 chg pin reading function.
uint8_t charger26_get_chg_state(charger26_t *ctx)
Charger 26 chg pin reading function.
Application Init
Initializes the driver and enables the device, sets the output voltage to 4.2 V and charging current to 100 mA.
{
log_cfg_t log_cfg;
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, " Application Init " );
if ( DIGITAL_OUT_UNSUPPORTED_PIN ==
charger26_init( &charger26, &charger26_cfg ) )
{
log_error( &logger, " Communication init." );
for ( ; ; );
}
Delay_ms ( 1000 );
log_printf( &logger, " Connect input power and battery. \r\n" );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
log_printf( &logger, " Enableing output. \r\n" );
{
log_printf( &logger, " Check connection. \r\n" );
Delay_ms ( 1000 );
}
log_info( &logger, " Application Task " );
}
#define CHARGER26_MAP_MIKROBUS(cfg, mikrobus)
MikroBUS pin mapping.
Definition charger26.h:108
#define CHARGER26_PIN_STATE_LOW
Definition charger26.h:68
#define CHARGER26_ENABLE_OUTPUT
Charger 26 output enable setting.
Definition charger26.h:88
void charger26_enable_output(charger26_t *ctx, uint8_t output_state)
Charger 26 enable charger output function.
void application_init(void)
Definition main.c:29
Application Task
Tracking charging status, as soon as charging stops, device output is disabled.
{
{
log_printf( &logger, " Battery is charging. \r\n" );
}
else
{
log_printf( &logger, " Battery isn't charging, disabling output. \r\n" );
for ( ; ; );
}
Delay_ms ( 1000 );
}
#define CHARGER26_DISABLE_OUTPUT
Definition charger26.h:89
void application_task(void)
Definition main.c:77
Application Output
This Click board can be interfaced and monitored in two ways:
- Application Output - Use the "Application Output" window in Debug mode for real-time data monitoring. Set it up properly by following this tutorial.
- UART Terminal - Monitor data via the UART Terminal using a USB to UART converter. For detailed instructions, check out this tutorial.
Additional Notes and Information
The complete application code and a ready-to-use project are available through the NECTO Studio Package Manager for direct installation in the NECTO Studio. The application code can also be found on the MIKROE GitHub account.